/**
 * 
 */
package com.yidu.drug.action;

import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.yidu.drug.common.Message;
import com.yidu.drug.model.DrugMaterialsModel;
import com.yidu.drug.service.DrugMaterialsService;

/**
 * 药品材料Action
 * @author 王志伟
 * @date 2018年8月22日 上午9:38:08
 * @version 1.0
 */
@Controller
@RequestMapping("/drugMaterials")
public class DrugMaterialsAction {
	
	//药品材料Service
	@Resource
	private DrugMaterialsService drugMaterialsService;
	
	//消息类
	Message m=new Message();
	/**
	 * 查询药品材料
	 * @param limit 条数
	 * @param page 页数
	 * @param drugId 药品ID
	 * @return 返回查询的结果
	 */
	@RequestMapping("/findByDrugId")
	@ResponseBody
	public Map<String, Object> findByDrugId(String limit, String page,String drugId){
		//返回查询的结果
		return drugMaterialsService.findByDrugId(limit,page,drugId);
	}
	
	/**
	 * 删除的方法
	 * @param dmId 药品材料ID
	 * @return 删除的行数
	 */
	@RequestMapping("/delete")
	@ResponseBody
	public Message delete(String dmId){
		m.setNum(drugMaterialsService.deleteByPrimaryKey(dmId));
		return m;
	}
	
	/**
	 * 修改的方法
	 * @param dmId 药品材料的ID
	 * @param dmNumber 修改的药品材料数量
	 * @return 修改的行数
	 */
	@RequestMapping("/update")
	@ResponseBody
	public Message update(String dmId,String dmNumber){
		//药品材料模型
		DrugMaterialsModel dm=new DrugMaterialsModel();
		//加入ID
		dm.setDmId(dmId);
		//加入数量
	    dm.setDmNumber(Long.valueOf(dmNumber));
	    //修改的行数
	    m.setNum(drugMaterialsService.updateByPrimaryKeySelective(dm));
	    return m;
	}
	
	/**
	 * 材料配置，修改或增加的方法
	 * @param a 前台传过来的Json数据
	 * @return 修改或增加的行数
	 */
	@RequestMapping("/updateOrAdd")
	@ResponseBody
	public Message updateOrAdd(String a){
		int count=drugMaterialsService.updateOrAdd(a);
		m.setNum(count);
	    return m;
	}
	
	/**
	 * 根据药品ID查询的方法
	 * @param drugId 药品ID
	 * @return 查询的数据
	 */
	@RequestMapping("/findMatIdByDrugId")
	@ResponseBody
	public List<DrugMaterialsModel>  findMatIdByDrugId(String drugId){
		return drugMaterialsService.findMatIdByDrugId(drugId);
	}
	
	/**
	 * 材料配置修改 根据药品ID
	 * @param matIds 材料ID
	 * @param drugId 药品ID
	 * @return 修改的行数
	 */
	@RequestMapping("/addOrDelete")
	@ResponseBody
	public Message addOrDelete(String matIds,String drugId){
		int count=drugMaterialsService.addOrDelete(matIds,drugId);
		m.setNum(count);
	    return m;
	}
}
